Humanoid robots represent a major step in applying machine technology toward assisting persons in the home. Potential applications include assisted living, wherein a robot could help bring an elderly person his medicine or glasses or assist the handicapped. Additional applications may encompass a myriad of daily activities, such as performing household chores, attending infants and responding to calls and queries. Through visual and voice recognition techniques, robots may be able to recognize and greet their users by name. In addition, robots should be able to learn through human interaction and other methods.
Fundamental to these goals is the ability to endow robots in indoor environments with the ability to effectively interact with their users and with other people and the environment. In particular, robots must be able to respond “appropriately” to given situations, that is, so as to satisfy the perceived desires of their users. Importantly, the robot need not find the “right” response, but rather the one that reflects the majority consensus opinion. This is referred to as “common sense.” Thus, a robot must be instilled with a knowledge base, and with a means of formulating responses to perceived situations. Furthermore, robots should be capable of adding to their knowledge bases online.
For example, a robot may observe a baby crying, as shown in FIG. 1. An internal knowledge base might indicate that several responses might be appropriate, including feeding, entertaining and calming the baby. A second database or algorithm may include or calculate some indicia of the relative likelihood that a particular response is most appropriate in this situation. The robot will initiate the most likely response according to distributed knowledge. Over time, the robot would modify the likelihood information according to changes in the knowledge base.
Conventional solutions to such problems have included rule-based systems, which represent an important part of reasoning in artificial intelligence (AI). Although rule-based systems provide efficient and elegant knowledge representation, they exhibit several weaknesses that reduce their usability in the large-domain, real-time reasoning applications of interest. First, the handcrafted rules require manual effort by specialists in the domain who are fluent in the pertinent representations. Second, maintaining the consistency of the large set of rules required to deal with a large domain becomes increasingly difficult as the number of rules grows. As a consequence, the rule sets are generally not scalable to the millions of pieces of knowledge required. Third, the systems may break down when rules conflict. Finally, when retrieving the knowledge from the knowledge base, the reasoning process is limited to literal matching of the preconditions of the rules.
Other conventional approaches have involved a variety of mechanisms for storing knowledge and for formulating responses to situations. For example, MindNet (Dolan, Richardson, & Vanderwende 1998) receives knowledge from a dictionary, but can comprehend only a limited number of relations (e.g. used_for). Cyc (Lenat & Guha 1990) relies upon manual formation of rules. Cyc includes more than a million rules entered by over 50 people over the last 15 years; it initially utilized a human-like reasoning system but has evolved to specialize in defense applications. The information embodied in the MIT Media Lab Common Sense reasoning project (Liu & Singh 2004) is too broad, and the knowledge is not dense enough for the deep inferences required. Similarly, other common sense knowledge bases have attempted to capture very broad but overly sparse human common sense knowledge (Liu, Lieberman, & Selker 2003; Eagle, Singh, & Pentland 2003; Mueller 1998; Guha et al. 1990).
Attempts to mitigate these shortcomings have involved alternative techniques including knowledge capture, linguistic tools and Bayesian reasoning. For example, common sense knowledge may be gathered from non-specialist “netizens,” using distributed techniques, as with the Open Mind Initiative (Stork 1999; 2000). While offering advantages over other methods, distributed knowledge capture results in “messy” knowledge, e.g., having redundancy, missing relationships, mis-spelling and error. Thus, processing is required to refine such knowledge into a form useful for providing robots with knowledge.
Accordingly, there is a need for an improved method for providing robots with the ability to satisfy perceived desires or requests of their users. The method should be reliable and flexible, guided by notions of common sense and instilled with the ability to learn through interaction with humans and the environment.